<?php
namespace Models;
use Models\Model\Users;
use Models\Model\UsersTable;
use Models\Model\UserPosts;
use Models\Model\UserPostsTable;
use Models\Model\RetrivePassword;
use Models\Model\RetrivePasswordTable;
use Models\Model\Courses;
use Models\Model\CoursesTable;
use Models\Model\Questions;
use Models\Model\QuestionsTable;
use Models\Model\Results;
use Models\Model\ResultsTable;
use Models\Model\Answers;
use Models\Model\AnswersTable;
use Models\Model\Subjects;
use Models\Model\SubjectsTable;
use Models\Model\Technology;
use Models\Model\TechnologyTable;
use Models\Model\LevelCompleted;
use Models\Model\LevelCompletedTable;
use Models\Model\Contact;
use Models\Model\ContactTable;
use Zend\Db\ResultSet\ResultSet;
use Zend\Db\TableGateway\TableGateway;

class Module
{
    public function getAutoloaderConfig()
    {
        return array(
            'Zend\Loader\ClassMapAutoloader' => array(
                __DIR__ . '/autoload_classmap.php',
            ),
            'Zend\Loader\StandardAutoloader' => array(
                'namespaces' => array(
                    __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
                ),
            ),
        );
    }

    public function getServiceConfig()
    {
        return array(
			'factories' => array(
				'Models\Model\UsersFactory'					=>    'Models\Factory\Model\UsersTableFactory',
				'Models\Model\UserPostsFactory'				=>    'Models\Factory\Model\UserPostsTableFactory',
				'Models\Model\RetrivePasswordFactory'		=>    'Models\Factory\Model\RetrivePasswordTableFactory',
				'Models\Model\CoursesFactory'				=>    'Models\Factory\Model\CoursesTableFactory',
				'Models\Model\QuestionsFactory'				=>    'Models\Factory\Model\QuestionsTableFactory',
				'Models\Model\ResultsFactory'				=>    'Models\Factory\Model\ResultsTableFactory',
				'Models\Model\AnswersFactory'				=>    'Models\Factory\Model\AnswersTableFactory',
				'Models\Model\SubjectsFactory'				=>    'Models\Factory\Model\SubjectsTableFactory',
				'Models\Model\TechnologyFactory'			=>    'Models\Factory\Model\TechnologyTableFactory',
				'Models\Model\ContactFactory'			=>    'Models\Factory\Model\ContactTableFactory',
				'Models\Model\LevelCompletedFactory'			=>    'Models\Factory\Model\LevelCompletedTableFactory',
			),
        );
    }

    public function getConfig()
    {
        return include __DIR__ . '/config/module.config.php';
    }
}